home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 24 / Amiga Format AFCD24 (Feb 1998, Issue 108).iso / -seriously_amiga- / shareware / programming / other / apic / examples / simple.lst < prev   
File List  |  1998-01-05  |  3KB  |  89 lines

  1. #PIC V1.0 (c)1997 J.Petroglou    LIST FILE
  2. #file: dh2:IDE/APICforAMINET/APIC/examples/simple.asm
  3. #date: Sun Dec 14 20:43:59 1997
  4. #pic : PIC16C54
  5. ADDR CODE     SRCLINE SOURCECODE
  6.  
  7. 0000             000001 ;this is a simple source
  8. 0000             000002 ;
  9. 0000             000003 ;this little program toggles the PortA bit 3,
  10. 0000             000004 ;Port B counts every change on bit RA.3
  11. 0000             000005 ;
  12. 0000             000006 
  13. 0000             000007 
  14. 0000             000008 
  15. 0000             000009     list    p=PIC16C54, r=dec, s=off
  16. 0000             000010 
  17. 0000             000011 
  18. 01FF             000012     org    1ffh
  19. 01FF 0A00        000013     goto    start
  20. 0000             000014     org    0
  21. 0000             000015 
  22. 0000             000016 
  23. 0000             000017 
  24. 0000             000018 count1    =    0Bh            ;this assigns the symbol to the register 
  25. 0000             000019 
  26. 0000             000020 RA    =    5            ;PortA is register 5
  27. 0000             000021 RB    =    6            ;PortB is register 6
  28. 0000             000022 
  29. 0000             000023 
  30. 0000             000024 
  31. 0000 0C07        000025 start    movlw    00000111b    
  32. 0001 0005        000026     tris    RA            ;bit 0 to bit 2 are inputs
  33. 0002             000027 
  34. 0002 0C00        000028     movlw    0            ;portb is output
  35. 0003 0006        000029     tris    RB
  36. 0004             000030 
  37. 0004 0066        000031     clrf    RB,f            ;clear PortB
  38. 0005             000032 
  39. 0005 0C08        000033 main    movlw    00001000b
  40. 0006 01A5        000034     xorwf    RA            ;toggle bit 3 from PortA
  41. 0007             000035 
  42. 0007 02A6        000036     incf    RB,f            ;increase PortB
  43. 0008             000037 
  44. 0008 090A        000038     call    delay
  45. 0009             000039 
  46. 0009 0A05        000040     goto    main            ;do the main loop
  47. 000A             000041 
  48. 000A             000042 
  49. 000A             000043 
  50. 000A             000044 
  51. 000A 0C14        000045 delay    movlw    20
  52. 000B 002B        000046     movwf    count1            ;mov 20 to count1
  53. 000C             000047 
  54. 000C 02EB        000048 :loop    decfsz    count1
  55. 000D 0A0C        000049     goto    :loop            ;decrement count1 and jump to local symbol until
  56. 000E             000050                     ;loop is > 0
  57. 000E 0800        000051     retlw    0
  58.  
  59.  
  60. Used Symbols
  61. -----------------------------------------
  62. count1                           0000000B
  63. RA                               00000005
  64. RB                               00000006
  65. start                            00000000
  66. main                             00000005
  67. delay                            0000000A
  68.  
  69.  
  70. Used Defines
  71. -----------------------------------------
  72.  
  73.  
  74. PROGRAM MEMORY USAGE TABLE:    '-' = not used  'X' = used
  75.  
  76. 0000 : XXXXXXXXXXXXXXX- ---------------- ---------------- ----------------
  77. 0040 : ---------------- ---------------- ---------------- ----------------
  78. 0080 : ---------------- ---------------- ---------------- ----------------
  79. 00C0 : ---------------- ---------------- ---------------- ----------------
  80. 0100 : ---------------- ---------------- ---------------- ----------------
  81. 0140 : ---------------- ---------------- ---------------- ----------------
  82. 0180 : ---------------- ---------------- ---------------- ----------------
  83. 01C0 : ---------------- ---------------- ---------------- ---------------X
  84.  
  85. Program Memory Words Used:  0016
  86. Program Memory Words Free:  0496
  87.  
  88. Errors: 0
  89.